""" 设置表格背景颜色 """
from docx import Document
from docx.oxml.ns import nsdecls
from docx.oxml import parse_xml
 
# 表格首行背景色设置
def tabBgColor(table,cols,colorStr):
    shading_list = locals()
    for i in range(cols):
        shading_list['shading_elm_'+str(i)] = parse_xml(r'<w:shd {} w:fill="{bgColor}"/>'.format(nsdecls('w'),bgColor = colorStr))
        table.rows[0].cells[i]._tc.get_or_add_tcPr().append(shading_list['shading_elm_'+str(i)])
 
 
# 新建表行数
rowsNum = 3
# 新建表列数
colsNum = 3
# 背景色，根据需要调整，可参考站长之家选色 http://tool.chinaz.com/Tools/PageColor.aspx
colorStr = '6495ED'
 
doc = Document()
tableDemo = doc.add_table(rows=rowsNum, cols=colsNum, style='Table Grid')
 
tabBgColor(tableDemo, colsNum, colorStr)
doc.save('demo.docx')
 
 


